/**
 * 开店星新零售管理系统
 * @description 基于Yii2+Vue2.0+uniapp研发，H5+小程序+公众号全渠道覆盖，功能完善开箱即用，框架成熟易扩展二开
 * @author 青岛开店星信息技术有限公司
 * @link https://www.kaidianxing.com
 * @copyright Copyright (c) 2020-2022 Qingdao ShopStar Information Technology Co., Ltd.
 * @copyright 版权归青岛开店星信息技术有限公司所有
 * @warning Unauthorized deletion of copyright information is prohibited.
 * @warning 未经许可禁止私自删除版权信息
 */

import { ModuleMixin } from '../Mixin'
class Video extends ModuleMixin {
    cacheAllVideo = {}
    constructor() {
        super()
    }
   
    methods = {
        clickVideo(videoCom) {
            let { componentData: { _comIndex_, params }, getRef, $refs } = videoCom
            if (params.videourl) {
                Object.values(this.cacheAllVideo).forEach(com=> {
                    if(com.componentData._comIndex_ == _comIndex_) return;
                    com.playing = 0
                    // 缓存中已经播放过的视频组件存在
                    if(com['$refs'][com.getRef|| 'myvideo']){
                        com['$refs'][com.getRef|| 'myvideo'].pause()
                    } else {
                        // 已销毁
                        delete this.cacheAllVideo[_comIndex_]
                    }
                })
                if (!this.cacheAllVideo[_comIndex_]) {
                    this.cacheAllVideo[_comIndex_] = videoCom;
                }

                videoCom.playing = 1;
               
                $refs[getRef|| 'myvideo'].click();
            }

        }
    }
}

export default new Video()